package com.codi.bus.core.service;

import com.codi.base.exception.BaseAppException;
import com.codi.bus.core.resultModel.BaseResult;
import com.codi.bus.core.resultModel.WalletDetailResult;

import java.util.Date;

/**
 * Created by asus on 2018/5/14.
 * 收益查询
 */
public interface AssetsIncomeService {
    /**
     * 日收益
     * @param userId
     * @param fundCode
     * @param type
     * @param beginNum
     * @param requestNum
     * @return
     */
    BaseResult getProfit(Long userId, String fundCode, String type, Integer beginNum, Integer requestNum);

    /**
     * 组合日收益
     * @param userId
     * @param tradeAcco
     * @param type
     * @param beginNum
     * @param requestNum
     * @return
     */
    BaseResult getPortfolioProfit(Long userId, String tradeAcco, String type, Integer beginNum, Integer requestNum);

    /**
     * 累计收益
     * @param userId
     * @param fundCode
     * @param type
     * @return
     */
    BaseResult getAccum(Long userId, String fundCode, String type);

    /**
     * 组合累计收益
     * @param userId
     * @param tradeAcco
     * @param type
     * @return
     */
    BaseResult getPortfolioAccum(Long userId, String tradeAcco, String type);

    WalletDetailResult getSevenProfitByFundCode(Long userId, String fundCode) throws BaseAppException;

    Date getBeginDate(Date dateTime);
}
